package cn.edu.xhu.library_management.area.service;

import cn.edu.xhu.library_management.area.entity.LmFloor;
import org.apache.ibatis.annotations.*;

import java.util.List;

/**
 * @Author: MMJ
 * @Date: 2022 - 11 - 13
 * @Description: 楼层服务
 */
public interface FloorService {

    /**
     * 通过图书馆id，查询对应的所有楼层信息
     * @param infoId 图书馆信息ID
     * @return 楼层集合
     */
    public List<LmFloor> findFloorsByInfoId(Integer infoId);

    /**
     * 通过楼层ID，查找楼层
     * @param id 楼层ID
     * @return 楼层对象
     */
    public LmFloor findFloorById(Integer id);

    /**
     * 添加楼层
     * @param floor 楼层对象
     * @return 添加成功 返回true 添加失败 返回false
     */
    public boolean addFloor(LmFloor floor);

    /**
     * 修改楼层，通过楼层ID
     * @param floor 楼层对象
     * @return 修改成功 返回true 修改失败 返回false
     */
    public boolean updateFloor(LmFloor floor);

    /**
     * 通过楼层ID，删除楼层
     * @param id 楼层id
     * @return 删除成功 返回true 删除失败 返回false
     */
    public boolean deleteFloorById(Integer id);

    /**
     * 通过图书馆ID和特定类型查询楼层信息
     * @param infoId 图书馆Id
     * @param type 类型 书架 座位 其他
     * @return 删除成功 返回true 删除失败 返回false
     */
    List<LmFloor> findFloorsByType(Integer infoId, Integer type);
}
